package Gestion_De_Couleurs is

   --===============================================================--
   --                                                               --
   --  Paquetage de gestion de quelques couleurs                    --
   --                                                               --
   --  Ce paquetage offre un type enumeratif COULEUR                --
   --  Les operations associees sont:                               --
   --                 - la saisie                                   --
   --                 - l'affichage                                 --
   --                 - le tirage aleatoire d'une couleur           --
   --                                                               --
   --===============================================================--

   --Type Couleurs de l'arc-en-ciel

   type Couleur is (Rouge, Orange, Jaune, Vert, Bleu, Indigo, Violet);

   Nombre_De_Couleurs : constant := Couleur'Pos (Couleur'Last) + 1;

   --Type position de la couleur dans l'espace d'affichage

   type Place is (Gauche, Milieu, Droite);

   --Affichage d'une couleur
   --ITEM     : Couleur a afficher a l'ecran de l'utilisateur
   --FORMAT   : Nombre de colonnes reservees a cet affichage 
   --POSITION : Emplacement de la couleur dans cet espace

   procedure Put (Item     : in Couleur;
         Format   : in Natural := 0;
         Position : in Place   := Gauche);

   --Saisie d'une couleur
   --ITEM     : Variable dans laquelle doit etre placee la couleur saisie
   -- Un test est effectue afin de s'assurer que la couleur est correcte

   procedure Get (Item : out Couleur);

   --Definition d'une valeur aleatoire de couleur

   function Une_Couleur_Aleatoire return Couleur;

end Gestion_De_Couleurs;

